package com.wbc.play;


/**
 * 思考 两个打印的值 是否和想象的一样
 * 入栈 出栈 暂存 建议使用 debug跑一下即可 清除
 */
public class FinallyDemo {
    public static void main(String[] args) {

        System.out.println("start");
        FinallyDemo finallyDemo = new FinallyDemo();
        System.out.println(finallyDemo.test());
        System.out.println("end");
    }

    int x = 1;
    private int test() {
        try{
            //运行方法 准备返回  这里是 1 暂存 等 finally结束再返回 不管 x值如何变化 这里的1不会在发送变化
            return getX();
        }finally {
            //在 return 之前的 把 x ++
            ++x;
            System.out.println("finally:"+x);
            //输出 2  之后 去 return 1
        }
    }

    private int getX() {
        return x;
    }


}
